package com.tiancheng.trade.payment.channel.bo;

import lombok.Data;

import java.util.List;

/**
 * 支付订单结算信息
 */
@Data
public class UnifiedOrderSettleBO {
    /**
     * 支付流水号
     */
    private String flowId;
    /**
     * 子支付流水号
     */
    private String subFlowId;
    /**
     * 子商户号进件id
     */
    private Long merchantRegId;
    /**
     * 结算id
     */
    private String settleFlowId;
    /**
     * 子商户号（交易中台）
     */
    private String merchantCode;
    /**
     * 平台抽佣金
     */
    private Integer platformAmount;
    /**
     * 子订单应收金额，总金额
     */
    private Integer orderAmount;
    /**
     * 结算收款明细项
     */
    private List<UnifiedOrderSettleItemBO> settleItems;
    /**
     * 明细项
     */
    @Data
    public static class UnifiedOrderSettleItemBO{
        /**
         * 商户子订单号
         * 如不上送，订单号由后台生成
         * 建议生成规则：{来源编号(4位)}{时间
         * (yyyyMMddHHmmssSSS)(17位)}{7位随
         * 机数}
         */
        private String merOrderId;
        /**
         * 是否平台佣金商户
         */
        private Boolean isPlatformMerchant;
        /**
         * 子商户号进件id
         */
        private Long merchantRegId;
        /**
         * 子商户号（交易中台）
         */
        private String merchantCode;
        /**
         * 子商户号-名称
         */
        private String merchantName;
        /**
         * 企业用户号
         */
        private String enterpriseCode;
        /**
         * 子商户号（银行）
         */
        private String mid;
        /**
         * 子商户分账金额；抽佣后金额，min=0 max=100000000；
         */
        private Integer totalAmount;
    }
}
